리펙토링 코드

 


IntelliJ IDEA 여러 가지 자바 코드 리펙토링을 제공합니다.

NOTE: 

리펙토링의 마틴 파울러 따르면:  Improving the Design of Existing Code  (Addison-Wesley, 2000), refactoring "그것이 코드의 외부 동작을 바꾸지 않지만 내부 구조를 개선하는 그런 방법으로 소프트웨어 시스템을 변경하는 프로세스입니다.  그것은 버그를 포함할 기회를 최소화하는 코드를 깨끗하기 위한 훈련 방법입니다".  상세한 것은http://www.refactoring.com/ 참조하십시오



 이용할 수 있는 코드 리펙토링:

 Rename Refactorings

 Rename Package
 Rename Class
 Rename Method
 Rename Field
 Rename Local Variable
 Rename Method Parameter 

 메소드 시그너쳐 변경
 클래스 시그너쳐 변경
 메소드 정적으로 만들기  

 인스턴스 메소드로 변환
 
Move Refactorings

 Move Package
 Move Class
 Move Members
 Move Inner to Upper Level

 카피/클론 클래스
 안전한 삭제  

 추출 메소드  

 메소드 코드 중복의 교체  

 Introduce Variable
 Introduce Field
 Introduce Constant
 Introduce Parameter

 Extract Interface
 Extract Superclass

 가능한 곳에서 인터페이스 사용
 멤버 끌어 올리기
 멤버 밀어 내리기
 
Replace Inheritance With Delegation
 Inline Refactoring

 Inline Variable
 Inline Method

 익명을 내부로 변환
 필드의 인캡슐화
 Replace Temp with Query
 Replace Constructor With Factory Method
 Generify Refactoring

 

Package and Class Migration  

   
마이그레이션 특징은 사용자에 패키지와 클래스의 주어진 설정에 참조의 이름을 바꾸는 것을 허락합니다.  

당신은 연속적으로 적용될 것인 세트의 변경을 지정해야만 합니다.  

IDEA 전체의 프로젝트에서 패키지와 클래스에 정의 순서와 변경 참조에서 주어진 설정을 처리할 것입니다.  

그것은 요소 그들 자신이 아니고 그들의 사용만을 변경합니다.  

이것은 맵으로부터의 요소가 심지어 프로젝트에서 이용되지 않을 지도 모르는 것을 의미합니다.
당신이 어떤 3 코드(예를 들면 일부 클래스 라이브러리) 변경하는 것에 따라 당신의 소스 코드를 업데이트할 필요가 있을 특징은 대부분은 유용합니다.
예를 들면, 당신이 스윙 1.1 함께 작업에 스윙 1.0.3 사용하고 있는 당신의 소스 코드를 업데이트할 있습니다. 이것을 하기 위해서, 모든 서브 패키지와 함께com.sun.java.swing.* 패키지에 모든 참조는 javax.swing.* 명명되어야만 합니다.

동시에 com.sun.java.swing.plaf .windows com.sun.java.swing.plaf.otif 패키지의 모든 사용은 변경되어서는 안됩니다.

 

마이그레이트 방법

 1.    메뉴 Tools Migrate...  항목을 선택합니다

 2.    다이얼로그에서 진행하기 위한 마이그레이션 맵을 선택할 있습니다.  클래스와 패키지 이름이 정의된 선택된 마이그레이션 맵은 변경됩니다.

 선택된 마이그레이션을 보거나, 그것을 변경하기 위해, Edit... 버튼을 누르십시오.
 
새로운 마이그레이션 설정을 생성하기 위해, "New..." 버튼을 누르십시오.
 3.   계속하기 위해, "Find usages"  버튼을 누르십시오 4.   모든 발견된 사용은 검색 결과 윈도우에서 메인 윈도의 바닥 부분에서 보여질 것입니다.
 5.   당신은 결과를 브라우즈 있고, 마이그레이션 프로세스 동안 변경될 당신의 코드에서 위치를 있습니다.
 6.   실제 마이그레이션을 수행하기 위해서, 패널의 바닥에 있는Do Migrate  버튼을 누르십시오 (또는 Alt + D 누르십시오 ). 당신은 또한 Cancel 버튼 또는Alt + C 눌러서 조작을 취소할 수도 있습니다.

 

마이그레이션 설정이 저장되는


모든 마이그레이션 설정은 프로그램 설치 디렉터리의 config\migration 서브 디렉터리에 저장됩니다. 각각의 설정은 분리된 *.xml 파일에 저장됩니다. 마이그레이션 설정의 이름은 파일의 이름을 정의 합니다.